Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Kristian Arntzen <post@arntzen-software.no>2022-01-05 16:51:36 +0300
committerHans-Kristian Arntzen <post@arntzen-software.no>2022-01-05 16:56:01 +0300
commitfe8848a6f240acf00fd8decb94c44c81174271e3 (patch)
tree7a76d17b72d212f17003ae13063a3ecc613023a0 /reference
parent9c0b74f73b13b39258f06580e8670305372c8102 (diff)
Roll dependencies.
Diffstat (limited to 'reference')
-rw-r--r--reference/opt/shaders-hlsl/asm/frag/line-directive.line.asm.frag2
-rw-r--r--reference/opt/shaders-hlsl/asm/frag/pack-and-unpack-uint2.fxconly.nofxc.sm60.asm.frag15
-rw-r--r--reference/opt/shaders-hlsl/frag/array-lut-no-loop-variable.frag9
-rw-r--r--reference/opt/shaders-hlsl/frag/no-return2.frag10
-rw-r--r--reference/opt/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag38
-rw-r--r--reference/opt/shaders-hlsl/frag/unary-enclose.frag3
-rw-r--r--reference/opt/shaders-hlsl/frag/unorm-snorm-packing.frag8
-rw-r--r--reference/opt/shaders-hlsl/vert/return-array.vert3
-rw-r--r--reference/opt/shaders-msl/asm/frag/line-directive.line.asm.frag2
-rw-r--r--reference/opt/shaders-msl/asm/frag/op-image-sampled-image.asm.frag2
-rw-r--r--reference/opt/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp10
-rw-r--r--reference/opt/shaders-msl/frag/packed-expression-vector-shuffle.frag8
-rw-r--r--reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc (renamed from reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc)0
-rw-r--r--reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc (renamed from reference/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc)0
-rw-r--r--reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc (renamed from reference/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc)0
-rw-r--r--reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc (renamed from reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc)0
-rw-r--r--reference/opt/shaders/asm/frag/line-directive.line.asm.frag2
-rw-r--r--reference/opt/shaders/asm/frag/pack-and-unpack-uint2.asm.frag3
-rw-r--r--reference/opt/shaders/frag/texel-fetch-offset.frag2
-rw-r--r--reference/opt/shaders/geom/geometry-passthrough.geom5
-rw-r--r--reference/opt/shaders/vulkan/comp/buffer-reference-base-alignment-promote.nocompat.vk.comp.vk1
-rw-r--r--reference/opt/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp.vk14
-rw-r--r--reference/opt/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk10
-rw-r--r--reference/opt/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk20
-rw-r--r--reference/shaders-hlsl-no-opt/vert/flatten-matrix-input.flatten-matrix-vertex-input.vert13
-rw-r--r--reference/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag56
-rw-r--r--reference/shaders-hlsl/frag/unorm-snorm-packing.frag8
-rw-r--r--reference/shaders-msl-no-opt/comp/bitcast-16bit-2.invalid.comp12
-rw-r--r--reference/shaders-msl-no-opt/vert/functions_nested.vert3
-rw-r--r--reference/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp23
-rw-r--r--reference/shaders-msl/frag/packed-expression-vector-shuffle.frag4
-rw-r--r--reference/shaders-no-opt/comp/bitcast-16bit-2.invalid.comp12
-rw-r--r--reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc (renamed from reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc)6
-rw-r--r--reference/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc (renamed from reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc)6
-rw-r--r--reference/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc (renamed from reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc)6
-rw-r--r--reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc (renamed from reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc)4
-rw-r--r--reference/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk23
-rw-r--r--reference/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk42
38 files changed, 203 insertions, 182 deletions
diff --git a/reference/opt/shaders-hlsl/asm/frag/line-directive.line.asm.frag b/reference/opt/shaders-hlsl/asm/frag/line-directive.line.asm.frag
index 7fb40355..4a1cf2ee 100644
--- a/reference/opt/shaders-hlsl/asm/frag/line-directive.line.asm.frag
+++ b/reference/opt/shaders-hlsl/asm/frag/line-directive.line.asm.frag
@@ -70,8 +70,6 @@ void frag_main()
#line 42 "test.frag"
FragColor += (10.0f + vColor);
#line 43 "test.frag"
-#line 42 "test.frag"
-#line 43 "test.frag"
if (FragColor < 100.0f)
{
}
diff --git a/reference/opt/shaders-hlsl/asm/frag/pack-and-unpack-uint2.fxconly.nofxc.sm60.asm.frag b/reference/opt/shaders-hlsl/asm/frag/pack-and-unpack-uint2.fxconly.nofxc.sm60.asm.frag
index 0841b7ca..358773b2 100644
--- a/reference/opt/shaders-hlsl/asm/frag/pack-and-unpack-uint2.fxconly.nofxc.sm60.asm.frag
+++ b/reference/opt/shaders-hlsl/asm/frag/pack-and-unpack-uint2.fxconly.nofxc.sm60.asm.frag
@@ -5,22 +5,9 @@ struct SPIRV_Cross_Output
float4 FragColor : SV_Target0;
};
-uint64_t spvPackUint2x32(uint2 value)
-{
- return (uint64_t(value.y) << 32) | uint64_t(value.x);
-}
-
-uint2 spvUnpackUint2x32(uint64_t value)
-{
- uint2 Unpacked;
- Unpacked.x = uint(value & 0xffffffff);
- Unpacked.y = uint(value >> 32);
- return Unpacked;
-}
-
void frag_main()
{
- uint2 unpacked = spvUnpackUint2x32(spvPackUint2x32(uint2(18u, 52u)));
+ uint2 unpacked = uint2(18u, 52u);
FragColor = float4(float(unpacked.x), float(unpacked.y), 1.0f, 1.0f);
}
diff --git a/reference/opt/shaders-hlsl/frag/array-lut-no-loop-variable.frag b/reference/opt/shaders-hlsl/frag/array-lut-no-loop-variable.frag
index 3adf7d98..38f416fb 100644
--- a/reference/opt/shaders-hlsl/frag/array-lut-no-loop-variable.frag
+++ b/reference/opt/shaders-hlsl/frag/array-lut-no-loop-variable.frag
@@ -1,12 +1,6 @@
static const float _17[5] = { 1.0f, 2.0f, 3.0f, 4.0f, 5.0f };
static float4 FragColor;
-static float4 v0;
-
-struct SPIRV_Cross_Input
-{
- float4 v0 : TEXCOORD0;
-};
struct SPIRV_Cross_Output
{
@@ -24,9 +18,8 @@ void frag_main()
}
}
-SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
+SPIRV_Cross_Output main()
{
- v0 = stage_input.v0;
frag_main();
SPIRV_Cross_Output stage_output;
stage_output.FragColor = FragColor;
diff --git a/reference/opt/shaders-hlsl/frag/no-return2.frag b/reference/opt/shaders-hlsl/frag/no-return2.frag
index e9d7bbc8..3b50282f 100644
--- a/reference/opt/shaders-hlsl/frag/no-return2.frag
+++ b/reference/opt/shaders-hlsl/frag/no-return2.frag
@@ -1,16 +1,8 @@
-static float4 vColor;
-
-struct SPIRV_Cross_Input
-{
- float4 vColor : TEXCOORD0;
-};
-
void frag_main()
{
}
-void main(SPIRV_Cross_Input stage_input)
+void main()
{
- vColor = stage_input.vColor;
frag_main();
}
diff --git a/reference/opt/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag b/reference/opt/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
index f1b6bfaf..6685ef9c 100644
--- a/reference/opt/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
+++ b/reference/opt/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
@@ -74,24 +74,30 @@ void frag_main()
float2 _136 = _136_tmp.xx;
float _143_tmp = uCombinedSamplers[NonUniformResourceIndex(_49)].CalculateLevelOfDetail(_uCombinedSamplers_sampler[NonUniformResourceIndex(_49)], vUV);
float2 _143 = _143_tmp.xx;
- float2 _149 = FragColor.xy + (_136 + _143);
- FragColor = float4(_149.x, _149.y, FragColor.z, FragColor.w);
- int _157;
- spvTextureSize(uSamplers[NonUniformResourceIndex(_65)], 0u, _157);
- FragColor.x += float(int(_157));
- int _174;
- spvTextureSize(uSamplersMS[NonUniformResourceIndex(_65)], 0u, _174);
- FragColor.y += float(int(_174));
- uint _185_dummy_parameter;
- float2 _189 = FragColor.xy + float2(int2(spvTextureSize(uSamplers[NonUniformResourceIndex(_65)], uint(0), _185_dummy_parameter)));
- FragColor = float4(_189.x, _189.y, FragColor.z, FragColor.w);
+ float4 _147 = FragColor;
+ float2 _149 = _147.xy + (_136 + _143);
+ FragColor.x = _149.x;
+ FragColor.y = _149.y;
+ int _160;
+ spvTextureSize(uSamplers[NonUniformResourceIndex(_65)], 0u, _160);
+ FragColor.x += float(int(_160));
+ int _176;
+ spvTextureSize(uSamplersMS[NonUniformResourceIndex(_65)], 0u, _176);
+ FragColor.y += float(int(_176));
+ uint _187_dummy_parameter;
+ float4 _189 = FragColor;
+ float2 _191 = _189.xy + float2(int2(spvTextureSize(uSamplers[NonUniformResourceIndex(_65)], uint(0), _187_dummy_parameter)));
+ FragColor.x = _191.x;
+ FragColor.y = _191.y;
FragColor += uImages[NonUniformResourceIndex(_83)][_111].xxxx;
- uint _212_dummy_parameter;
- float2 _216 = FragColor.xy + float2(int2(spvImageSize(uImages[NonUniformResourceIndex(_65)], _212_dummy_parameter)));
- FragColor = float4(_216.x, _216.y, FragColor.z, FragColor.w);
+ uint _216_dummy_parameter;
+ float4 _218 = FragColor;
+ float2 _220 = _218.xy + float2(int2(spvImageSize(uImages[NonUniformResourceIndex(_65)], _216_dummy_parameter)));
+ FragColor.x = _220.x;
+ FragColor.y = _220.y;
uImages[NonUniformResourceIndex(_88)][_111] = 50.0f.x;
- uint _242;
- InterlockedAdd(uImagesU32[NonUniformResourceIndex(_100)][_111], 40u, _242);
+ uint _248;
+ InterlockedAdd(uImagesU32[NonUniformResourceIndex(_100)][_111], 40u, _248);
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
diff --git a/reference/opt/shaders-hlsl/frag/unary-enclose.frag b/reference/opt/shaders-hlsl/frag/unary-enclose.frag
index 348b91c1..85419ef1 100644
--- a/reference/opt/shaders-hlsl/frag/unary-enclose.frag
+++ b/reference/opt/shaders-hlsl/frag/unary-enclose.frag
@@ -1,11 +1,9 @@
static float4 FragColor;
static float4 vIn;
-static int4 vIn1;
struct SPIRV_Cross_Input
{
float4 vIn : TEXCOORD0;
- nointerpolation int4 vIn1 : TEXCOORD1;
};
struct SPIRV_Cross_Output
@@ -21,7 +19,6 @@ void frag_main()
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
vIn = stage_input.vIn;
- vIn1 = stage_input.vIn1;
frag_main();
SPIRV_Cross_Output stage_output;
stage_output.FragColor = FragColor;
diff --git a/reference/opt/shaders-hlsl/frag/unorm-snorm-packing.frag b/reference/opt/shaders-hlsl/frag/unorm-snorm-packing.frag
index 0dd9ed3f..95786b93 100644
--- a/reference/opt/shaders-hlsl/frag/unorm-snorm-packing.frag
+++ b/reference/opt/shaders-hlsl/frag/unorm-snorm-packing.frag
@@ -82,9 +82,11 @@ void frag_main()
FP32Out = spvUnpackUnorm4x8(UNORM8);
FP32Out = spvUnpackSnorm4x8(SNORM8);
float2 _21 = spvUnpackUnorm2x16(UNORM16);
- FP32Out = float4(_21.x, _21.y, FP32Out.z, FP32Out.w);
- float2 _26 = spvUnpackSnorm2x16(SNORM16);
- FP32Out = float4(_26.x, _26.y, FP32Out.z, FP32Out.w);
+ FP32Out.x = _21.x;
+ FP32Out.y = _21.y;
+ float2 _31 = spvUnpackSnorm2x16(SNORM16);
+ FP32Out.x = _31.x;
+ FP32Out.y = _31.y;
UNORM8Out = spvPackUnorm4x8(FP32);
SNORM8Out = spvPackSnorm4x8(FP32);
UNORM16Out = spvPackUnorm2x16(FP32.xy);
diff --git a/reference/opt/shaders-hlsl/vert/return-array.vert b/reference/opt/shaders-hlsl/vert/return-array.vert
index bd157556..be11c3f1 100644
--- a/reference/opt/shaders-hlsl/vert/return-array.vert
+++ b/reference/opt/shaders-hlsl/vert/return-array.vert
@@ -1,10 +1,8 @@
static float4 gl_Position;
-static float4 vInput0;
static float4 vInput1;
struct SPIRV_Cross_Input
{
- float4 vInput0 : TEXCOORD0;
float4 vInput1 : TEXCOORD1;
};
@@ -20,7 +18,6 @@ void vert_main()
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
- vInput0 = stage_input.vInput0;
vInput1 = stage_input.vInput1;
vert_main();
SPIRV_Cross_Output stage_output;
diff --git a/reference/opt/shaders-msl/asm/frag/line-directive.line.asm.frag b/reference/opt/shaders-msl/asm/frag/line-directive.line.asm.frag
index 3634499f..27b7d477 100644
--- a/reference/opt/shaders-msl/asm/frag/line-directive.line.asm.frag
+++ b/reference/opt/shaders-msl/asm/frag/line-directive.line.asm.frag
@@ -73,8 +73,6 @@ fragment main0_out main0(main0_in in [[stage_in]])
#line 42 "test.frag"
out.FragColor += (10.0 + in.vColor);
#line 43 "test.frag"
-#line 42 "test.frag"
-#line 43 "test.frag"
if (out.FragColor < 100.0)
{
}
diff --git a/reference/opt/shaders-msl/asm/frag/op-image-sampled-image.asm.frag b/reference/opt/shaders-msl/asm/frag/op-image-sampled-image.asm.frag
index 45f0ca52..807fde3f 100644
--- a/reference/opt/shaders-msl/asm/frag/op-image-sampled-image.asm.frag
+++ b/reference/opt/shaders-msl/asm/frag/op-image-sampled-image.asm.frag
@@ -16,7 +16,7 @@ struct main0_out
fragment main0_out main0(constant push_cb& _19 [[buffer(0)]], texture2d<float> t0 [[texture(0)]], sampler dummy_sampler [[sampler(0)]])
{
main0_out out = {};
- out.o0 = t0.read(uint2(as_type<int2>(_19.cb0[0u].zw)) + uint2(int2(-1, -2)), as_type<int>(0.0));
+ out.o0 = t0.read(uint2(as_type<int2>(_19.cb0[0u].zw)) + uint2(int2(-1, -2)), 0);
return out;
}
diff --git a/reference/opt/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp b/reference/opt/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
index 3e86c56a..0a94deb5 100644
--- a/reference/opt/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
+++ b/reference/opt/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
@@ -42,10 +42,10 @@ kernel void main0(constant Params& _18 [[buffer(1)]], acceleration_structure<ins
int _96 = q2[1].get_candidate_geometry_id();
int _97 = q.get_committed_primitive_id();
float2 _100 = q2[0].get_candidate_triangle_barycentric_coord();
- bool _103 = q.is_committed_triangle_front_facing();
- float3 _104 = q.get_candidate_ray_direction();
- float3 _106 = q2[0].get_committed_ray_origin();
- float4x3 _110 = q.get_candidate_object_to_world_transform();
- float4x3 _112 = q2[1].get_committed_world_to_object_transform();
+ bool _107 = q.is_committed_triangle_front_facing();
+ float3 _108 = q.get_candidate_ray_direction();
+ float3 _110 = q2[0].get_committed_ray_origin();
+ float4x3 _114 = q.get_candidate_object_to_world_transform();
+ float4x3 _116 = q2[1].get_committed_world_to_object_transform();
}
diff --git a/reference/opt/shaders-msl/frag/packed-expression-vector-shuffle.frag b/reference/opt/shaders-msl/frag/packed-expression-vector-shuffle.frag
index dd319af5..388f5381 100644
--- a/reference/opt/shaders-msl/frag/packed-expression-vector-shuffle.frag
+++ b/reference/opt/shaders-msl/frag/packed-expression-vector-shuffle.frag
@@ -17,7 +17,13 @@ struct main0_out
fragment main0_out main0(constant UBO& _15 [[buffer(0)]])
{
main0_out out = {};
- out.FragColor = float4(_15.color[0], _15.color[1], _15.color[2], float4(1.0).w);
+ float4 _36 = float4(1.0);
+ _36.x = _15.color[0];
+ float4 _38 = _36;
+ _38.y = _15.color[1];
+ float4 _40 = _38;
+ _40.z = _15.color[2];
+ out.FragColor = _40;
return out;
}
diff --git a/reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc b/reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc
index 2748b497..2748b497 100644
--- a/reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc
+++ b/reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc
diff --git a/reference/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc b/reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc
index 6aadcefe..6aadcefe 100644
--- a/reference/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc
+++ b/reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc
diff --git a/reference/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc b/reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc
index 8c8ebf55..8c8ebf55 100644
--- a/reference/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc
+++ b/reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc
diff --git a/reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc b/reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc
index 04f5a1d3..04f5a1d3 100644
--- a/reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc
+++ b/reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc
diff --git a/reference/opt/shaders/asm/frag/line-directive.line.asm.frag b/reference/opt/shaders/asm/frag/line-directive.line.asm.frag
index 4c108eda..4682d79e 100644
--- a/reference/opt/shaders/asm/frag/line-directive.line.asm.frag
+++ b/reference/opt/shaders/asm/frag/line-directive.line.asm.frag
@@ -63,8 +63,6 @@ void main()
#line 42 "test.frag"
FragColor += (10.0 + vColor);
#line 43 "test.frag"
-#line 42 "test.frag"
-#line 43 "test.frag"
if (FragColor < 100.0)
{
}
diff --git a/reference/opt/shaders/asm/frag/pack-and-unpack-uint2.asm.frag b/reference/opt/shaders/asm/frag/pack-and-unpack-uint2.asm.frag
index 6d81fa61..f2a2a40f 100644
--- a/reference/opt/shaders/asm/frag/pack-and-unpack-uint2.asm.frag
+++ b/reference/opt/shaders/asm/frag/pack-and-unpack-uint2.asm.frag
@@ -1,11 +1,10 @@
#version 450
-#extension GL_ARB_gpu_shader_int64 : require
layout(location = 0) out vec4 FragColor;
void main()
{
- uvec2 unpacked = unpackUint2x32(packUint2x32(uvec2(18u, 52u)));
+ uvec2 unpacked = uvec2(18u, 52u);
FragColor = vec4(float(unpacked.x), float(unpacked.y), 1.0, 1.0);
}
diff --git a/reference/opt/shaders/frag/texel-fetch-offset.frag b/reference/opt/shaders/frag/texel-fetch-offset.frag
index 416f764d..520b4ee8 100644
--- a/reference/opt/shaders/frag/texel-fetch-offset.frag
+++ b/reference/opt/shaders/frag/texel-fetch-offset.frag
@@ -8,7 +8,7 @@ layout(location = 0) out vec4 FragColor;
void main()
{
- mediump ivec2 _22 = ivec2(gl_FragCoord.xy);
+ ivec2 _22 = ivec2(gl_FragCoord.xy);
FragColor = texelFetchOffset(uTexture, _22, 0, ivec2(1));
FragColor += texelFetchOffset(uTexture, _22, 0, ivec2(-1, 1));
}
diff --git a/reference/opt/shaders/geom/geometry-passthrough.geom b/reference/opt/shaders/geom/geometry-passthrough.geom
index d0d8806a..afbd6623 100644
--- a/reference/opt/shaders/geom/geometry-passthrough.geom
+++ b/reference/opt/shaders/geom/geometry-passthrough.geom
@@ -2,11 +2,6 @@
#extension GL_NV_geometry_shader_passthrough : require
layout(triangles) in;
-layout(passthrough) in gl_PerVertex
-{
- vec4 gl_Position;
-} gl_in[];
-
layout(passthrough, location = 0) in VertexBlock
{
int a;
diff --git a/reference/opt/shaders/vulkan/comp/buffer-reference-base-alignment-promote.nocompat.vk.comp.vk b/reference/opt/shaders/vulkan/comp/buffer-reference-base-alignment-promote.nocompat.vk.comp.vk
index a5a66b19..1808beec 100644
--- a/reference/opt/shaders/vulkan/comp/buffer-reference-base-alignment-promote.nocompat.vk.comp.vk
+++ b/reference/opt/shaders/vulkan/comp/buffer-reference-base-alignment-promote.nocompat.vk.comp.vk
@@ -23,6 +23,7 @@ layout(push_constant, std430) uniform Push
void main()
{
+ uint v = _15.bar.b;
uint _31 = atomicAdd(_15.bar.a, _15.bar.b);
}
diff --git a/reference/opt/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp.vk b/reference/opt/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp.vk
index de0964b1..1ec204b0 100644
--- a/reference/opt/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp.vk
+++ b/reference/opt/shaders/vulkan/comp/buffer-reference.nocompat.vk.comp.vk
@@ -19,17 +19,31 @@ layout(set = 0, binding = 0, std430) restrict buffer LinkedList
void main()
{
+ Node _45;
Node _114;
if (gl_WorkGroupID.x < 4u)
{
+ _45 = _50.head1;
_114 = _50.head1;
}
else
{
+ _45 = _50.head2;
_114 = _50.head2;
}
+ restrict Node n = _114;
+ Node param = _114.next;
+ Node param_1 = _50.head1;
+ Node param_2 = _50.head2;
_114.next.value = _50.head1.value + _50.head2.value;
+ Node param_4 = _50.head1;
+ Node param_3 = _50.head1;
+ n = _50.head1;
+ int v = _50.head2.value;
_50.head1.value = 20;
_50.head1.value = _50.head2.value * 10;
+ uint64_t _98 = uint64_t(_50.head2.next);
+ uint64_t uptr = _98;
+ Node unode = Node(_98);
}
diff --git a/reference/opt/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk b/reference/opt/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
index dcd37387..eda045dc 100644
--- a/reference/opt/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
+++ b/reference/opt/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
@@ -43,10 +43,10 @@ void main()
int _99 = rayQueryGetIntersectionGeometryIndexEXT(q2[1], bool(0));
int _100 = rayQueryGetIntersectionPrimitiveIndexEXT(q, bool(1));
vec2 _103 = rayQueryGetIntersectionBarycentricsEXT(q2[0], bool(0));
- bool _106 = rayQueryGetIntersectionFrontFaceEXT(q, bool(1));
- vec3 _107 = rayQueryGetIntersectionObjectRayDirectionEXT(q, bool(0));
- vec3 _109 = rayQueryGetIntersectionObjectRayOriginEXT(q2[0], bool(1));
- mat4x3 _113 = rayQueryGetIntersectionObjectToWorldEXT(q, bool(0));
- mat4x3 _115 = rayQueryGetIntersectionWorldToObjectEXT(q2[1], bool(1));
+ bool _110 = rayQueryGetIntersectionFrontFaceEXT(q, bool(1));
+ vec3 _111 = rayQueryGetIntersectionObjectRayDirectionEXT(q, bool(0));
+ vec3 _113 = rayQueryGetIntersectionObjectRayOriginEXT(q2[0], bool(1));
+ mat4x3 _117 = rayQueryGetIntersectionObjectToWorldEXT(q, bool(0));
+ mat4x3 _119 = rayQueryGetIntersectionWorldToObjectEXT(q2[1], bool(1));
}
diff --git a/reference/opt/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk b/reference/opt/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
index 74e375fd..891ed232 100644
--- a/reference/opt/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
+++ b/reference/opt/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
@@ -43,16 +43,22 @@ void main()
FragColor = texelFetch(uSamplers[nonuniformEXT(_49)], _111, 0);
int _116 = vIndex + 100;
uint _122 = atomicAdd(ssbos[_116].counter, 100u);
- vec2 _149 = FragColor.xy + (textureQueryLod(nonuniformEXT(sampler2D(uSamplers[_22], uSamps[_32])), vUV) + textureQueryLod(uCombinedSamplers[nonuniformEXT(_49)], vUV));
- FragColor = vec4(_149.x, _149.y, FragColor.z, FragColor.w);
+ vec4 _147 = FragColor;
+ vec2 _149 = _147.xy + (textureQueryLod(nonuniformEXT(sampler2D(uSamplers[_22], uSamps[_32])), vUV) + textureQueryLod(uCombinedSamplers[nonuniformEXT(_49)], vUV));
+ FragColor.x = _149.x;
+ FragColor.y = _149.y;
FragColor.x += float(textureQueryLevels(uSamplers[nonuniformEXT(_65)]));
FragColor.y += float(textureSamples(uSamplersMS[nonuniformEXT(_65)]));
- vec2 _189 = FragColor.xy + vec2(textureSize(uSamplers[nonuniformEXT(_65)], 0));
- FragColor = vec4(_189.x, _189.y, FragColor.z, FragColor.w);
+ vec4 _189 = FragColor;
+ vec2 _191 = _189.xy + vec2(textureSize(uSamplers[nonuniformEXT(_65)], 0));
+ FragColor.x = _191.x;
+ FragColor.y = _191.y;
FragColor += imageLoad(uImages[nonuniformEXT(_83)], _111);
- vec2 _216 = FragColor.xy + vec2(imageSize(uImages[nonuniformEXT(_65)]));
- FragColor = vec4(_216.x, _216.y, FragColor.z, FragColor.w);
+ vec4 _218 = FragColor;
+ vec2 _220 = _218.xy + vec2(imageSize(uImages[nonuniformEXT(_65)]));
+ FragColor.x = _220.x;
+ FragColor.y = _220.y;
imageStore(uImages[nonuniformEXT(_88)], _111, vec4(50.0));
- uint _242 = imageAtomicAdd(uImagesU32[nonuniformEXT(_100)], _111, 40u);
+ uint _248 = imageAtomicAdd(uImagesU32[nonuniformEXT(_100)], _111, 40u);
}
diff --git a/reference/shaders-hlsl-no-opt/vert/flatten-matrix-input.flatten-matrix-vertex-input.vert b/reference/shaders-hlsl-no-opt/vert/flatten-matrix-input.flatten-matrix-vertex-input.vert
index 906b0edd..d76b24fc 100644
--- a/reference/shaders-hlsl-no-opt/vert/flatten-matrix-input.flatten-matrix-vertex-input.vert
+++ b/reference/shaders-hlsl-no-opt/vert/flatten-matrix-input.flatten-matrix-vertex-input.vert
@@ -26,10 +26,15 @@ struct SPIRV_Cross_Output
void vert_main()
{
gl_Position = mul(v, m4);
- float3 _37 = gl_Position.xyz + mul(v.xyz, m3);
- gl_Position = float4(_37.x, _37.y, _37.z, gl_Position.w);
- float2 _52 = gl_Position.xy + mul(v.xy, m2);
- gl_Position = float4(_52.x, _52.y, gl_Position.z, gl_Position.w);
+ float4 _35 = gl_Position;
+ float3 _37 = _35.xyz + mul(v.xyz, m3);
+ gl_Position.x = _37.x;
+ gl_Position.y = _37.y;
+ gl_Position.z = _37.z;
+ float4 _56 = gl_Position;
+ float2 _58 = _56.xy + mul(v.xy, m2);
+ gl_Position.x = _58.x;
+ gl_Position.y = _58.y;
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
diff --git a/reference/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag b/reference/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
index 93f24d9a..cd5a6eee 100644
--- a/reference/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
+++ b/reference/shaders-hlsl/frag/nonuniform-qualifier.nonuniformresource.sm51.frag
@@ -77,31 +77,37 @@ void frag_main()
float _143_tmp = uCombinedSamplers[NonUniformResourceIndex(_139)].CalculateLevelOfDetail(_uCombinedSamplers_sampler[NonUniformResourceIndex(_139)], vUV);
float2 _143 = _143_tmp.xx;
queried += _143;
- float2 _149 = FragColor.xy + queried;
- FragColor = float4(_149.x, _149.y, FragColor.z, FragColor.w);
- int _154 = i + 20;
- int _157;
- spvTextureSize(uSamplers[NonUniformResourceIndex(_154)], 0u, _157);
- FragColor.x += float(int(_157));
- int _170 = i + 20;
- int _174;
- spvTextureSize(uSamplersMS[NonUniformResourceIndex(_170)], 0u, _174);
- FragColor.y += float(int(_174));
- int _182 = i + 20;
- uint _185_dummy_parameter;
- float2 _189 = FragColor.xy + float2(int2(spvTextureSize(uSamplers[NonUniformResourceIndex(_182)], uint(0), _185_dummy_parameter)));
- FragColor = float4(_189.x, _189.y, FragColor.z, FragColor.w);
- int _198 = i + 50;
- FragColor += uImages[NonUniformResourceIndex(_198)][int2(vUV)].xxxx;
- int _209 = i + 20;
- uint _212_dummy_parameter;
- float2 _216 = FragColor.xy + float2(int2(spvImageSize(uImages[NonUniformResourceIndex(_209)], _212_dummy_parameter)));
- FragColor = float4(_216.x, _216.y, FragColor.z, FragColor.w);
- int _221 = i + 60;
- uImages[NonUniformResourceIndex(_221)][int2(vUV)] = 50.0f.x;
- int _234 = i + 70;
- uint _242;
- InterlockedAdd(uImagesU32[NonUniformResourceIndex(_234)][int2(vUV)], 40u, _242);
+ float4 _147 = FragColor;
+ float2 _149 = _147.xy + queried;
+ FragColor.x = _149.x;
+ FragColor.y = _149.y;
+ int _157 = i + 20;
+ int _160;
+ spvTextureSize(uSamplers[NonUniformResourceIndex(_157)], 0u, _160);
+ FragColor.x += float(int(_160));
+ int _172 = i + 20;
+ int _176;
+ spvTextureSize(uSamplersMS[NonUniformResourceIndex(_172)], 0u, _176);
+ FragColor.y += float(int(_176));
+ int _184 = i + 20;
+ uint _187_dummy_parameter;
+ float4 _189 = FragColor;
+ float2 _191 = _189.xy + float2(int2(spvTextureSize(uSamplers[NonUniformResourceIndex(_184)], uint(0), _187_dummy_parameter)));
+ FragColor.x = _191.x;
+ FragColor.y = _191.y;
+ int _202 = i + 50;
+ FragColor += uImages[NonUniformResourceIndex(_202)][int2(vUV)].xxxx;
+ int _213 = i + 20;
+ uint _216_dummy_parameter;
+ float4 _218 = FragColor;
+ float2 _220 = _218.xy + float2(int2(spvImageSize(uImages[NonUniformResourceIndex(_213)], _216_dummy_parameter)));
+ FragColor.x = _220.x;
+ FragColor.y = _220.y;
+ int _227 = i + 60;
+ uImages[NonUniformResourceIndex(_227)][int2(vUV)] = 50.0f.x;
+ int _240 = i + 70;
+ uint _248;
+ InterlockedAdd(uImagesU32[NonUniformResourceIndex(_240)][int2(vUV)], 40u, _248);
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
diff --git a/reference/shaders-hlsl/frag/unorm-snorm-packing.frag b/reference/shaders-hlsl/frag/unorm-snorm-packing.frag
index 0dd9ed3f..95786b93 100644
--- a/reference/shaders-hlsl/frag/unorm-snorm-packing.frag
+++ b/reference/shaders-hlsl/frag/unorm-snorm-packing.frag
@@ -82,9 +82,11 @@ void frag_main()
FP32Out = spvUnpackUnorm4x8(UNORM8);
FP32Out = spvUnpackSnorm4x8(SNORM8);
float2 _21 = spvUnpackUnorm2x16(UNORM16);
- FP32Out = float4(_21.x, _21.y, FP32Out.z, FP32Out.w);
- float2 _26 = spvUnpackSnorm2x16(SNORM16);
- FP32Out = float4(_26.x, _26.y, FP32Out.z, FP32Out.w);
+ FP32Out.x = _21.x;
+ FP32Out.y = _21.y;
+ float2 _31 = spvUnpackSnorm2x16(SNORM16);
+ FP32Out.x = _31.x;
+ FP32Out.y = _31.y;
UNORM8Out = spvPackUnorm4x8(FP32);
SNORM8Out = spvPackSnorm4x8(FP32);
UNORM16Out = spvPackUnorm2x16(FP32.xy);
diff --git a/reference/shaders-msl-no-opt/comp/bitcast-16bit-2.invalid.comp b/reference/shaders-msl-no-opt/comp/bitcast-16bit-2.invalid.comp
index 815599cf..fa65e3bb 100644
--- a/reference/shaders-msl-no-opt/comp/bitcast-16bit-2.invalid.comp
+++ b/reference/shaders-msl-no-opt/comp/bitcast-16bit-2.invalid.comp
@@ -23,9 +23,13 @@ constant uint3 gl_WorkGroupSize [[maybe_unused]] = uint3(1u);
kernel void main0(device SSBO1& _21 [[buffer(0)]], device SSBO0& _29 [[buffer(1)]], constant UBO& _40 [[buffer(2)]], uint3 gl_GlobalInvocationID [[thread_position_in_grid]])
{
uint ident = gl_GlobalInvocationID.x;
- short2 _47 = as_type<short2>(((device int*)&_29.inputs[ident])[0u]) + as_type<short2>(_40.const0.xy);
- _21.outputs[ident] = short4(_47.x, _47.y, _21.outputs[ident].z, _21.outputs[ident].w);
- short2 _66 = short2(as_type<ushort2>(uint(((device int*)&_29.inputs[ident])[1u])) - as_type<ushort2>(_40.const0.zw));
- _21.outputs[ident] = short4(_21.outputs[ident].x, _21.outputs[ident].y, _66.x, _66.y);
+ int _33 = ((device int*)&_29.inputs[ident])[0u];
+ short2 _47 = as_type<short2>(_33) + as_type<short2>(_40.const0.xy);
+ ((device short*)&_21.outputs[ident])[0u] = _47.x;
+ ((device short*)&_21.outputs[ident])[1u] = _47.y;
+ int _57 = ((device int*)&_29.inputs[ident])[1u];
+ short2 _67 = short2(as_type<ushort2>(uint(_57)) - as_type<ushort2>(_40.const0.zw));
+ ((device short*)&_21.outputs[ident])[2u] = _67.x;
+ ((device short*)&_21.outputs[ident])[3u] = _67.y;
}
diff --git a/reference/shaders-msl-no-opt/vert/functions_nested.vert b/reference/shaders-msl-no-opt/vert/functions_nested.vert
index 5345a3c1..8809dbd0 100644
--- a/reference/shaders-msl-no-opt/vert/functions_nested.vert
+++ b/reference/shaders-msl-no-opt/vert/functions_nested.vert
@@ -169,7 +169,8 @@ void vs_adjust(thread float4& dst_reg0, thread float4& dst_reg1, thread float4&
tmp0.y = float4(dot(float4(in_pos.xyz, 1.0), v_309.vc[5])).y;
tmp0.z = float4(dot(float4(in_pos.xyz, 1.0), v_309.vc[6])).z;
float4 tmp1;
- tmp1 = float4(in_tc0.xy.x, in_tc0.xy.y, tmp1.z, tmp1.w);
+ tmp1.x = in_tc0.xy.x;
+ tmp1.y = in_tc0.xy.y;
tmp1.z = v_309.vc[15].x;
dst_reg7.y = float4(dot(float4(tmp1.xyz, 1.0), v_309.vc[8])).y;
dst_reg7.x = float4(dot(float4(tmp1.xyz, 1.0), v_309.vc[7])).x;
diff --git a/reference/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp b/reference/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
index fdee9d6c..64c993d4 100644
--- a/reference/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
+++ b/reference/shaders-msl/comp/ray-query.spv14.vk.ios.msl24.comp
@@ -55,16 +55,17 @@ kernel void main0(constant Params& _18 [[buffer(1)]], acceleration_structure<ins
int _97 = q.get_committed_primitive_id();
ival = _97;
float2 _100 = q2[0].get_candidate_triangle_barycentric_coord();
- fvals = float3(_100.x, _100.y, fvals.z);
- bool _103 = q.is_committed_triangle_front_facing();
- res = _103;
- float3 _104 = q.get_candidate_ray_direction();
- fvals = _104;
- float3 _106 = q2[0].get_committed_ray_origin();
- fvals = _106;
- float4x3 _110 = q.get_candidate_object_to_world_transform();
- float4x3 matrices = _110;
- float4x3 _112 = q2[1].get_committed_world_to_object_transform();
- matrices = _112;
+ fvals.x = _100.x;
+ fvals.y = _100.y;
+ bool _107 = q.is_committed_triangle_front_facing();
+ res = _107;
+ float3 _108 = q.get_candidate_ray_direction();
+ fvals = _108;
+ float3 _110 = q2[0].get_committed_ray_origin();
+ fvals = _110;
+ float4x3 _114 = q.get_candidate_object_to_world_transform();
+ float4x3 matrices = _114;
+ float4x3 _116 = q2[1].get_committed_world_to_object_transform();
+ matrices = _116;
}
diff --git a/reference/shaders-msl/frag/packed-expression-vector-shuffle.frag b/reference/shaders-msl/frag/packed-expression-vector-shuffle.frag
index dc894742..2ed36935 100644
--- a/reference/shaders-msl/frag/packed-expression-vector-shuffle.frag
+++ b/reference/shaders-msl/frag/packed-expression-vector-shuffle.frag
@@ -18,7 +18,9 @@ fragment main0_out main0(constant UBO& _15 [[buffer(0)]])
{
main0_out out = {};
float4 f = float4(1.0);
- f = float4(_15.color[0], _15.color[1], _15.color[2], f.w);
+ f.x = _15.color[0];
+ f.y = _15.color[1];
+ f.z = _15.color[2];
out.FragColor = f;
return out;
}
diff --git a/reference/shaders-no-opt/comp/bitcast-16bit-2.invalid.comp b/reference/shaders-no-opt/comp/bitcast-16bit-2.invalid.comp
index 78a12552..fb733ff3 100644
--- a/reference/shaders-no-opt/comp/bitcast-16bit-2.invalid.comp
+++ b/reference/shaders-no-opt/comp/bitcast-16bit-2.invalid.comp
@@ -33,9 +33,13 @@ layout(binding = 2, std140) uniform UBO
void main()
{
uint ident = gl_GlobalInvocationID.x;
- i16vec2 _47 = unpackInt2x16(_29.inputs[ident].x) + float16BitsToInt16(_40.const0.xy);
- _21.outputs[ident] = i16vec4(_47.x, _47.y, _21.outputs[ident].z, _21.outputs[ident].w);
- i16vec2 _66 = i16vec2(unpackUint2x16(uint(_29.inputs[ident].y)) - float16BitsToUint16(_40.const0.zw));
- _21.outputs[ident] = i16vec4(_21.outputs[ident].x, _21.outputs[ident].y, _66.x, _66.y);
+ int _33 = _29.inputs[ident].x;
+ i16vec2 _47 = unpackInt2x16(_33) + float16BitsToInt16(_40.const0.xy);
+ _21.outputs[ident].x = _47.x;
+ _21.outputs[ident].y = _47.y;
+ int _57 = _29.inputs[ident].y;
+ i16vec2 _67 = i16vec2(unpackUint2x16(uint(_57)) - float16BitsToUint16(_40.const0.zw));
+ _21.outputs[ident].z = _67.x;
+ _21.outputs[ident].w = _67.y;
}
diff --git a/reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc b/reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc
index ad66d550..2748b497 100644
--- a/reference/opt/shaders-ue4/asm/tesc/hs-incorrect-base-type.asm.tesc
+++ b/reference/shaders-ue4/asm/tesc/hs-incorrect-base-type.invalid.asm.tesc
@@ -263,7 +263,7 @@ struct type_StructuredBuffer_v4float
float4 _m0[1];
};
-constant float4 _602 = {};
+constant float4 _142 = {};
struct main0_out
{
@@ -328,7 +328,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
float4 _328 = float4(param_var_I[_313].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _336 = float4(param_var_I[_315].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _344 = float4(param_var_I[_316].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
- spvUnsafeArray<float4, 3> _392 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, ((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_313].Position) - (float4(dot(param_var_I[_313].Position - param_var_I[gl_InvocationID].Position, _301)) * _301)) + (((float4(2.0) * param_var_I[_315].Position) + param_var_I[_316].Position) - (float4(dot(param_var_I[_316].Position - param_var_I[_315].Position, _336)) * _336))) * float4(0.16666667163372039794921875), ((((float4(2.0) * param_var_I[_313].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_313].Position, _328)) * _328)) + (((float4(2.0) * param_var_I[_316].Position) + param_var_I[_315].Position) - (float4(dot(param_var_I[_315].Position - param_var_I[_316].Position, _344)) * _344))) * float4(0.16666667163372039794921875) });
+ spvUnsafeArray<float4, 3> _392 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, (((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_313].Position) - (float4(dot(param_var_I[_313].Position - param_var_I[gl_InvocationID].Position, _301)) * _301)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_315].Position) + param_var_I[_316].Position) - (float4(dot(param_var_I[_316].Position - param_var_I[_315].Position, _336)) * _336)) * float4(0.3333333432674407958984375))) * float4(0.5), (((((float4(2.0) * param_var_I[_313].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_313].Position, _328)) * _328)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_316].Position) + param_var_I[_315].Position) - (float4(dot(param_var_I[_315].Position - param_var_I[_316].Position, _344)) * _344)) * float4(0.3333333432674407958984375))) * float4(0.5) });
gl_out[gl_InvocationID].out_var_TEXCOORD10_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld0;
gl_out[gl_InvocationID].out_var_TEXCOORD11_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2;
gl_out[gl_InvocationID].out_var_COLOR0 = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.Color;
@@ -346,7 +346,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
if (gl_InvocationID == 0u)
{
float4 _450 = (((((temp_var_hullMainRetVal[0u].WorldPosition[1] + temp_var_hullMainRetVal[0u].WorldPosition[2]) + temp_var_hullMainRetVal[1u].WorldPosition[1]) + temp_var_hullMainRetVal[1u].WorldPosition[2]) + temp_var_hullMainRetVal[2u].WorldPosition[1]) + temp_var_hullMainRetVal[2u].WorldPosition[2]) * float4(0.16666667163372039794921875);
- float4 _463 = _602;
+ float4 _463 = _142;
_463.x = 0.5 * (temp_var_hullMainRetVal[1u].TessellationMultiplier + temp_var_hullMainRetVal[2u].TessellationMultiplier);
float4 _469 = _463;
_469.y = 0.5 * (temp_var_hullMainRetVal[2u].TessellationMultiplier + temp_var_hullMainRetVal[0u].TessellationMultiplier);
diff --git a/reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc b/reference/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc
index 23d82864..6aadcefe 100644
--- a/reference/opt/shaders-ue4/asm/tesc/hs-input-array-access.asm.tesc
+++ b/reference/shaders-ue4/asm/tesc/hs-input-array-access.invalid.asm.tesc
@@ -304,7 +304,7 @@ struct type_Primitive
float4 Primitive_CustomPrimitiveData[4];
};
-constant float4 _613 = {};
+constant float4 _140 = {};
struct main0_out
{
@@ -391,7 +391,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
float4 _336 = float4(param_var_I[_254].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _344 = float4(param_var_I[_256].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _352 = float4(param_var_I[_257].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
- spvUnsafeArray<float4, 3> _402 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, ((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_254].Position) - (float4(dot(param_var_I[_254].Position - param_var_I[gl_InvocationID].Position, _247)) * _247)) + (((float4(2.0) * param_var_I[_256].Position) + param_var_I[_257].Position) - (float4(dot(param_var_I[_257].Position - param_var_I[_256].Position, _344)) * _344))) * float4(0.16666667163372039794921875), ((((float4(2.0) * param_var_I[_254].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_254].Position, _336)) * _336)) + (((float4(2.0) * param_var_I[_257].Position) + param_var_I[_256].Position) - (float4(dot(param_var_I[_256].Position - param_var_I[_257].Position, _352)) * _352))) * float4(0.16666667163372039794921875) });
+ spvUnsafeArray<float4, 3> _402 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, (((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_254].Position) - (float4(dot(param_var_I[_254].Position - param_var_I[gl_InvocationID].Position, _247)) * _247)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_256].Position) + param_var_I[_257].Position) - (float4(dot(param_var_I[_257].Position - param_var_I[_256].Position, _344)) * _344)) * float4(0.3333333432674407958984375))) * float4(0.5), (((((float4(2.0) * param_var_I[_254].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_254].Position, _336)) * _336)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_257].Position) + param_var_I[_256].Position) - (float4(dot(param_var_I[_256].Position - param_var_I[_257].Position, _352)) * _352)) * float4(0.3333333432674407958984375))) * float4(0.5) });
gl_out[gl_InvocationID].out_var_TEXCOORD10_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld0;
gl_out[gl_InvocationID].out_var_TEXCOORD11_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2;
gl_out[gl_InvocationID].out_var_VS_To_DS_Position = param_var_I[gl_InvocationID].Position;
@@ -414,7 +414,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
if (gl_InvocationID == 0u)
{
float4 _461 = (((((temp_var_hullMainRetVal[0u].WorldPosition[1] + temp_var_hullMainRetVal[0u].WorldPosition[2]) + temp_var_hullMainRetVal[1u].WorldPosition[1]) + temp_var_hullMainRetVal[1u].WorldPosition[2]) + temp_var_hullMainRetVal[2u].WorldPosition[1]) + temp_var_hullMainRetVal[2u].WorldPosition[2]) * float4(0.16666667163372039794921875);
- float4 _474 = _613;
+ float4 _474 = _140;
_474.x = 0.5 * (temp_var_hullMainRetVal[1u].TessellationMultiplier + temp_var_hullMainRetVal[2u].TessellationMultiplier);
float4 _480 = _474;
_480.y = 0.5 * (temp_var_hullMainRetVal[2u].TessellationMultiplier + temp_var_hullMainRetVal[0u].TessellationMultiplier);
diff --git a/reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc b/reference/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc
index 247fc011..8c8ebf55 100644
--- a/reference/opt/shaders-ue4/asm/tesc/hs-texcoord-array.asm.tesc
+++ b/reference/shaders-ue4/asm/tesc/hs-texcoord-array.invalid.asm.tesc
@@ -286,7 +286,7 @@ struct type_Primitive
float4 Primitive_CustomPrimitiveData[4];
};
-constant float4 _537 = {};
+constant float4 _127 = {};
struct main0_out
{
@@ -343,7 +343,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
float4 _269 = float4(param_var_I[_254].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _277 = float4(param_var_I[_256].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
float4 _285 = float4(param_var_I[_257].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2.xyz, 0.0);
- spvUnsafeArray<float4, 3> _333 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, ((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_254].Position) - (float4(dot(param_var_I[_254].Position - param_var_I[gl_InvocationID].Position, _247)) * _247)) + (((float4(2.0) * param_var_I[_256].Position) + param_var_I[_257].Position) - (float4(dot(param_var_I[_257].Position - param_var_I[_256].Position, _277)) * _277))) * float4(0.16666667163372039794921875), ((((float4(2.0) * param_var_I[_254].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_254].Position, _269)) * _269)) + (((float4(2.0) * param_var_I[_257].Position) + param_var_I[_256].Position) - (float4(dot(param_var_I[_256].Position - param_var_I[_257].Position, _285)) * _285))) * float4(0.16666667163372039794921875) });
+ spvUnsafeArray<float4, 3> _333 = spvUnsafeArray<float4, 3>({ param_var_I[gl_InvocationID].Position, (((((float4(2.0) * param_var_I[gl_InvocationID].Position) + param_var_I[_254].Position) - (float4(dot(param_var_I[_254].Position - param_var_I[gl_InvocationID].Position, _247)) * _247)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_256].Position) + param_var_I[_257].Position) - (float4(dot(param_var_I[_257].Position - param_var_I[_256].Position, _277)) * _277)) * float4(0.3333333432674407958984375))) * float4(0.5), (((((float4(2.0) * param_var_I[_254].Position) + param_var_I[gl_InvocationID].Position) - (float4(dot(param_var_I[gl_InvocationID].Position - param_var_I[_254].Position, _269)) * _269)) * float4(0.3333333432674407958984375)) + ((((float4(2.0) * param_var_I[_257].Position) + param_var_I[_256].Position) - (float4(dot(param_var_I[_256].Position - param_var_I[_257].Position, _285)) * _285)) * float4(0.3333333432674407958984375))) * float4(0.5) });
gl_out[gl_InvocationID].out_var_TEXCOORD10_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld0;
gl_out[gl_InvocationID].out_var_TEXCOORD11_centroid = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.TangentToWorld2;
gl_out[gl_InvocationID].out_var_COLOR0 = param_var_I[gl_InvocationID].FactoryInterpolants.InterpolantsVSToPS.Color;
@@ -358,7 +358,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_View& View [[buffer(0)
if (gl_InvocationID == 0u)
{
float4 _385 = (((((temp_var_hullMainRetVal[0u].WorldPosition[1] + temp_var_hullMainRetVal[0u].WorldPosition[2]) + temp_var_hullMainRetVal[1u].WorldPosition[1]) + temp_var_hullMainRetVal[1u].WorldPosition[2]) + temp_var_hullMainRetVal[2u].WorldPosition[1]) + temp_var_hullMainRetVal[2u].WorldPosition[2]) * float4(0.16666667163372039794921875);
- float4 _398 = _537;
+ float4 _398 = _127;
_398.x = 0.5 * (temp_var_hullMainRetVal[1u].TessellationMultiplier + temp_var_hullMainRetVal[2u].TessellationMultiplier);
float4 _404 = _398;
_404.y = 0.5 * (temp_var_hullMainRetVal[2u].TessellationMultiplier + temp_var_hullMainRetVal[0u].TessellationMultiplier);
diff --git a/reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc b/reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc
index 13ea8bb7..04f5a1d3 100644
--- a/reference/opt/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.asm.tesc
+++ b/reference/shaders-ue4/asm/tesc/tess-factor-must-be-threadgroup.invalid.asm.tesc
@@ -115,7 +115,7 @@ struct type_Material
float4 Material_ScalarExpressions[1];
};
-constant float4 _182 = {};
+constant float4 _88 = {};
struct main0_out
{
@@ -160,7 +160,7 @@ kernel void main0(main0_in in [[stage_in]], constant type_Primitive& Primitive [
threadgroup_barrier(mem_flags::mem_device | mem_flags::mem_threadgroup);
if (gl_InvocationID == 0u)
{
- float4 _154 = _182;
+ float4 _154 = _88;
_154.x = 0.5 * (temp_var_hullMainRetVal[1u].TessellationMultiplier + temp_var_hullMainRetVal[2u].TessellationMultiplier);
float4 _160 = _154;
_160.y = 0.5 * (temp_var_hullMainRetVal[2u].TessellationMultiplier + temp_var_hullMainRetVal[0u].TessellationMultiplier);
diff --git a/reference/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk b/reference/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
index 0232f3dc..fbe5e3d9 100644
--- a/reference/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
+++ b/reference/shaders/vulkan/comp/ray-query.nocompat.spv14.vk.comp.vk
@@ -56,16 +56,17 @@ void main()
int _100 = rayQueryGetIntersectionPrimitiveIndexEXT(q, bool(1));
ival = _100;
vec2 _103 = rayQueryGetIntersectionBarycentricsEXT(q2[0], bool(0));
- fvals = vec3(_103.x, _103.y, fvals.z);
- bool _106 = rayQueryGetIntersectionFrontFaceEXT(q, bool(1));
- res = _106;
- vec3 _107 = rayQueryGetIntersectionObjectRayDirectionEXT(q, bool(0));
- fvals = _107;
- vec3 _109 = rayQueryGetIntersectionObjectRayOriginEXT(q2[0], bool(1));
- fvals = _109;
- mat4x3 _113 = rayQueryGetIntersectionObjectToWorldEXT(q, bool(0));
- mat4x3 matrices = _113;
- mat4x3 _115 = rayQueryGetIntersectionWorldToObjectEXT(q2[1], bool(1));
- matrices = _115;
+ fvals.x = _103.x;
+ fvals.y = _103.y;
+ bool _110 = rayQueryGetIntersectionFrontFaceEXT(q, bool(1));
+ res = _110;
+ vec3 _111 = rayQueryGetIntersectionObjectRayDirectionEXT(q, bool(0));
+ fvals = _111;
+ vec3 _113 = rayQueryGetIntersectionObjectRayOriginEXT(q2[0], bool(1));
+ fvals = _113;
+ mat4x3 _117 = rayQueryGetIntersectionObjectToWorldEXT(q, bool(0));
+ mat4x3 matrices = _117;
+ mat4x3 _119 = rayQueryGetIntersectionWorldToObjectEXT(q2[1], bool(1));
+ matrices = _119;
}
diff --git a/reference/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk b/reference/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
index bd46cb1f..9a7862a4 100644
--- a/reference/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
+++ b/reference/shaders/vulkan/frag/nonuniform-qualifier.vk.nocompat.frag.vk
@@ -46,23 +46,29 @@ void main()
vec2 queried = textureQueryLod(nonuniformEXT(sampler2D(uSamplers[i + 10], uSamps[i + 40])), vUV);
int _139 = i + 10;
queried += textureQueryLod(uCombinedSamplers[nonuniformEXT(_139)], vUV);
- vec2 _149 = FragColor.xy + queried;
- FragColor = vec4(_149.x, _149.y, FragColor.z, FragColor.w);
- int _154 = i + 20;
- FragColor.x += float(textureQueryLevels(uSamplers[nonuniformEXT(_154)]));
- int _170 = i + 20;
- FragColor.y += float(textureSamples(uSamplersMS[nonuniformEXT(_170)]));
- int _182 = i + 20;
- vec2 _189 = FragColor.xy + vec2(textureSize(uSamplers[nonuniformEXT(_182)], 0));
- FragColor = vec4(_189.x, _189.y, FragColor.z, FragColor.w);
- int _198 = i + 50;
- FragColor += imageLoad(uImages[nonuniformEXT(_198)], ivec2(vUV));
- int _209 = i + 20;
- vec2 _216 = FragColor.xy + vec2(imageSize(uImages[nonuniformEXT(_209)]));
- FragColor = vec4(_216.x, _216.y, FragColor.z, FragColor.w);
- int _221 = i + 60;
- imageStore(uImages[nonuniformEXT(_221)], ivec2(vUV), vec4(50.0));
- int _234 = i + 70;
- uint _242 = imageAtomicAdd(uImagesU32[nonuniformEXT(_234)], ivec2(vUV), 40u);
+ vec4 _147 = FragColor;
+ vec2 _149 = _147.xy + queried;
+ FragColor.x = _149.x;
+ FragColor.y = _149.y;
+ int _157 = i + 20;
+ FragColor.x += float(textureQueryLevels(uSamplers[nonuniformEXT(_157)]));
+ int _172 = i + 20;
+ FragColor.y += float(textureSamples(uSamplersMS[nonuniformEXT(_172)]));
+ int _184 = i + 20;
+ vec4 _189 = FragColor;
+ vec2 _191 = _189.xy + vec2(textureSize(uSamplers[nonuniformEXT(_184)], 0));
+ FragColor.x = _191.x;
+ FragColor.y = _191.y;
+ int _202 = i + 50;
+ FragColor += imageLoad(uImages[nonuniformEXT(_202)], ivec2(vUV));
+ int _213 = i + 20;
+ vec4 _218 = FragColor;
+ vec2 _220 = _218.xy + vec2(imageSize(uImages[nonuniformEXT(_213)]));
+ FragColor.x = _220.x;
+ FragColor.y = _220.y;
+ int _227 = i + 60;
+ imageStore(uImages[nonuniformEXT(_227)], ivec2(vUV), vec4(50.0));
+ int _240 = i + 70;
+ uint _248 = imageAtomicAdd(uImagesU32[nonuniformEXT(_240)], ivec2(vUV), 40u);
}