5547b25afe
Undef values may be of struct type and may be used in constants. Therefore, they must be interleaved with constants and types. Fixes the rest of the Vulkan CTS test `dEQP-VK.spirv_assembly.instruction.compute.opundef.undefined_spec_constant_composite`. (Please excuse the churn in the reference output; it's an inevitable result of this change.)
34 lines
467 B
Plaintext
34 lines
467 B
Plaintext
#version 450
|
|
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
|
|
|
struct _20
|
|
{
|
|
int _m0;
|
|
int _m1;
|
|
};
|
|
|
|
int _28;
|
|
|
|
layout(binding = 1, std430) buffer _5_6
|
|
{
|
|
int _m0[10];
|
|
} _6;
|
|
|
|
layout(binding = 0, std430) buffer _7_8
|
|
{
|
|
int _m0[10];
|
|
} _8;
|
|
|
|
int _39(int _41, _20 _42)
|
|
{
|
|
return _41 + _42._m1;
|
|
}
|
|
|
|
void main()
|
|
{
|
|
int _32 = _8._m0[gl_GlobalInvocationID.x];
|
|
_20 _33 = _20(_28, 200);
|
|
_6._m0[gl_GlobalInvocationID.x] = _39(_32, _33);
|
|
}
|
|
|