VK_EXT_shader_long_vector.proposal

This extension adds support for vectors with more than four components, and for vectors whose component count comes from a specialization constant.

Problem Statement

This is a generalization of the vector support in VK_NV_cooperative_vector. The goal is to allow long vectors to be used almost anywhere a vector is allowed.

Solution Space

The design is straightforward. Allow larger component count for OpTypeVector. Add a new instruction OpTypeVectorIdEXT where the component count comes from a constant instruction. The main question is whether OpTypeVectorIdEXT and OpTypeCooperativeVectorNV are the same instruction (they are).

Proposal

Examples

None.